package com.xunyin.modules.area.domain;

import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xunyin.domain.BaseDomain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * @author ysn
 * @date 2022-09-15
 * 城市类
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "t_area_space")
public class TAreaSpace extends BaseDomain {

    /**
     * 区域ID
     */
    @TableId
    @ApiModelProperty(value = "区域ID")
    private Integer areaId;

    /**
     * 父节点ID
     */
    @ApiModelProperty(value = "关联产品ID")
    private Integer areaParent;

    /**
     * 区域代码
     */
    @ApiModelProperty(value = "区域代码")
    private String areaCode;
    /**
     * 区域名称
     */
    @ApiModelProperty(value = "区域名称")
    private String areaName;

    /**
     * 节点等级 1=省/直辖市 2=市/市辖区 3=区/县 4=片区/街道/镇
     */
    @ApiModelProperty(value = "节点等级 1=省/直辖市 2=市/市辖区 3=区/县 4=片区/街道/镇")
    private Integer areaLevel;

    /**
     * 区域路径（区域代码用英文逗号隔开）
     */
    @ApiModelProperty(value = "区域路径（区域代码用英文逗号隔开）")
    private String areaPath;

    /**
     * 区域描述
     */
    @ApiModelProperty(value = "区域描述")
    private String areaDesc;

    /**
     * 区域状态  0=禁用 1=启用
     */
    @ApiModelProperty(value = "区域状态  0=禁用 1=启用")
    private Short areaStatus;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private String areaLatitude;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private String areaLongitude;

    private Date deleteTime;
/*    private Integer  createUserId ;
    private Integer  updateUserId ;*/

    public void copy(TAreaSpace source) {
        BeanUtil.copyProperties(source, this, CopyOptions.create().setIgnoreNullValue(true));
    }


}